/**Classe Cliente que se conectar aos Servidores via Socket
 * 
 */
package Cliente;

import java.io.BufferedReader;//Biblioteca que faz um Buffer de streans(bytes)
import java.io.IOException;//Biblioteca de excecao de I/O
import java.io.InputStreamReader;//Biblioteca que cuida do fluxo de entrada de stream(bytes)
import java.net.InetAddress;
import java.net.Socket;//Biblioteca que faz conexao com servidor
import java.net.UnknownHostException;//Biblioteca que cuida da excecao caso o host nao exista

import javax.swing.JOptionPane;
/**
 * @author Diego2
 *
 */
public class Cliente {
	
	
	
	//Conectar ao servidor Dolar
	public boolean conectarDolar() {
		boolean testeServidor = false;
		Socket dolar = null;
		BufferedReader readerDolar = null;
		InetAddress ipDoHost = null; 
		try {			 
			 
			ipDoHost = InetAddress.getLocalHost();	//recuperar ip maquina local
			

			dolar = new Socket(ipDoHost,11000);//ip do servidor e porta de conexao
			
			//fluxo de entrada do cliente encadeado ao BuferedReader "apenas para testes de conexao"
			/*
			InputStreamReader streamDolar = new InputStreamReader(dolar.getInputStream());//cria um objeto InputStemReader que recebe em seu contrutor um socket
			readerDolar = new BufferedReader(streamDolar);//Buffer para amazenar streans
			String mensagemDolar = readerDolar.readLine();
			System.out.println(mensagemDolar);
			*/
			
			testeServidor=true;

		}catch (Exception e1) {			
			
			//e1.printStackTrace();
		}finally {//se a coexao estiver aberta fecha conexao e o buffer
			if(dolar!=null){
			//dolar.close();
			//readerDolar.close();
			}
		}
		return testeServidor;		
		
		
	}
	//Conectar Servidor Euro
	public boolean conectarEuro(){
		boolean testeServidor = false;
		Socket euro = null;
		BufferedReader readerEuro = null;
		InputStreamReader streamEuro = null;
		InetAddress ipDoHost = null;
		
		try{			  
			 
			ipDoHost = InetAddress.getLocalHost();//recuperar ip maquina local
			
			euro = new Socket(ipDoHost,11001);
			//fluxo de entrada do cliente encadeado ao BuferedReader
			streamEuro = new InputStreamReader(euro.getInputStream());//cria um objeto InputStemReader que recebe em seu contrutor um socket
			readerEuro = new BufferedReader(streamEuro);//Buffer para amazenar streans
			String mensagemEuro = readerEuro.readLine();
			System.out.println(mensagemEuro);
			readerEuro.close();
			
			testeServidor = true;
			
		}catch (Exception e1) {			

			//e1.printStackTrace();
		}finally {//se a coexao estiver aberta fecha conexao e o buffer
			try {
				if(euro!=null){
				euro.close();
				readerEuro.close();
				}
			} catch (IOException e) {
				
				e.printStackTrace();
			}
		}
		return testeServidor;

	}
	//Conectar ao servidor Libra
	public boolean conectarLibra(){
		boolean testeServidor = false;
		Socket libra = null;
		InputStreamReader streamLibra = null;
		BufferedReader readerLibra = null;
		InetAddress ipDoHost = null; 
		try{			 
			 
			ipDoHost = InetAddress.getLocalHost();//recuperar ip maquina local
			
			libra = new Socket(ipDoHost, 11002);
			//fluxo de entrada do cliente encadeado ao BuferedReader
			streamLibra = new InputStreamReader(libra.getInputStream());//cria um objeto InputStemReader que recebe em seu contrutor um socket
			readerLibra = new BufferedReader(streamLibra);//Buffer para amazenar streans
			String mensagemLibra = readerLibra.readLine();
			System.out.println(mensagemLibra);
			readerLibra.close();
			
			testeServidor = true;
			
		}catch (Exception e1) {			

			//e1.printStackTrace();
		}finally {//se a coexao estiver aberta fecha conexao e o buffer
			try {
				if(libra!=null){
				libra.close();
				readerLibra.close();
				}
			} catch (IOException e) {
				
				e.printStackTrace();
			}
		}
		return testeServidor;
		
	}
		
	
	
}











